home *** CD-ROM | disk | FTP | other *** search
/ PC World 2006 July & August / PCWorld_2006-07-08_cd.bin / komunikace / apache / apache_2[1].2.2-win32-x86-no_ssl.msi / Data1.cab / _5C758532305A2AC7487EB777D638AFD1 < prev    next >
Text File  |  2006-04-29  |  3KB  |  96 lines

  1. /* Copyright 2001-2005 The Apache Software Foundation or its licensors, as
  2.  * applicable.
  3.  *
  4.  * Licensed under the Apache License, Version 2.0 (the "License");
  5.  * you may not use this file except in compliance with the License.
  6.  * You may obtain a copy of the License at
  7.  *
  8.  *     http://www.apache.org/licenses/LICENSE-2.0
  9.  *
  10.  * Unless required by applicable law or agreed to in writing, software
  11.  * distributed under the License is distributed on an "AS IS" BASIS,
  12.  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13.  * See the License for the specific language governing permissions and
  14.  * limitations under the License.
  15.  */
  16.  
  17.  
  18. /**
  19.  * @file  mod_core.h
  20.  * @brief mod_core private header file
  21.  *
  22.  * @defgroup MOD_CORE mod_core
  23.  * @ingroup  APACHE_MODS
  24.  * @{
  25.  */
  26.  
  27. #ifndef MOD_CORE_H
  28. #define MOD_CORE_H
  29.  
  30. #include "apr.h"
  31. #include "apr_buckets.h"
  32.  
  33. #include "httpd.h"
  34. #include "util_filter.h"
  35.  
  36.  
  37. #ifdef __cplusplus
  38. extern "C" {
  39. #endif
  40.  
  41. /* Handles for core filters */
  42. extern AP_DECLARE_DATA ap_filter_rec_t *ap_http_input_filter_handle;
  43. extern AP_DECLARE_DATA ap_filter_rec_t *ap_http_header_filter_handle;
  44. extern AP_DECLARE_DATA ap_filter_rec_t *ap_chunk_filter_handle;
  45. extern AP_DECLARE_DATA ap_filter_rec_t *ap_http_outerror_filter_handle;
  46. extern AP_DECLARE_DATA ap_filter_rec_t *ap_byterange_filter_handle;
  47.  
  48. /*
  49.  * These (input) filters are internal to the mod_core operation.
  50.  */
  51. apr_status_t ap_http_filter(ap_filter_t *f, apr_bucket_brigade *b,
  52.                             ap_input_mode_t mode, apr_read_type_e block,
  53.                             apr_off_t readbytes);
  54.  
  55. /* HTTP/1.1 chunked transfer encoding filter. */
  56. apr_status_t ap_http_chunk_filter(ap_filter_t *f, apr_bucket_brigade *b);
  57.  
  58. /* Filter to handle any error buckets on output */
  59. apr_status_t ap_http_outerror_filter(ap_filter_t *f,
  60.                                      apr_bucket_brigade *b);
  61.  
  62. char *ap_response_code_string(request_rec *r, int error_index);
  63.  
  64. /**
  65.  * Send the minimal part of an HTTP response header.
  66.  * @param r The current request
  67.  * @param bb The brigade to add the header to.
  68.  * @warning Modules should be very careful about using this, and should
  69.  *          the default behavior.  Much of the HTTP/1.1 implementation
  70.  *          correctness depends on the full headers.
  71.  * @deffunc void ap_basic_http_header(request_rec *r, apr_bucket_brigade *bb)
  72.  */
  73. AP_DECLARE(void) ap_basic_http_header(request_rec *r, apr_bucket_brigade *bb);
  74.  
  75. /**
  76.  * Send an appropriate response to an http TRACE request.
  77.  * @param r The current request
  78.  * @tip returns DONE or the HTTP status error if it handles the TRACE,
  79.  * or DECLINED if the request was not for TRACE.
  80.  * request method was not TRACE.
  81.  */
  82. AP_DECLARE_NONSTD(int) ap_send_http_trace(request_rec *r);
  83.  
  84. /**
  85.  * Send an appropriate response to an http OPTIONS request.
  86.  * @param r The current request
  87.  */
  88. AP_DECLARE(int) ap_send_http_options(request_rec *r);
  89.  
  90. #ifdef __cplusplus
  91. }
  92. #endif
  93.  
  94. #endif    /* !MOD_CORE_H */
  95. /** @} */
  96.